Data warehousing and online analytical processing (OLAP) are widespread technologies employed to support business decisions and data analysis. A data warehouse is a nonvolatile repository for an enormous volume of organizational or enterprise information (e.g., 100 MB-TB). These data warehouses are populated at regular intervals with data from one or more heterogeneous data sources, for example from multiple transactional systems. This aggregation of data provides a consolidated view of an organization from which valuable information can be derived. Though the sheer volume can be overwhelming, the organization of data can help ensure timely retrieval of useful information.
Data warehouse data is often stored in accordance with a multidimensional database model. Conceptually in multidimensional database systems, data is represented as cubes with a plurality of dimensions and measures, rather than relational tables with rows and columns. A cube includes groups of data such as three of more dimensions and one or more measures. Dimensions are a cube attribute that contains data of a similar type. Each dimension has a hierarchy of levels or categories of aggregated data. Accordingly, data can be view at different levels of detail. Measures represent real values, which are to be analyzed. The multidimensional model is optimized to deal with large amounts of data. In particular, it allows users execute complex queries on a data cube. OLAP is almost synonymous with multidimensional databases.
OLAP is a key element in a data warehouse system. OLAP describes category of technologies or tools utilized to retrieve data from a data warehouse. These tools can extract and present multidimensional data from different points of view to assist and support managers and other individuals examining and analyzing data. The multidimensional data model is advantageous with respect to OLAP as it allows users to easily formulate complex queries, and filter or slice data into meaningful subsets, among other things. There are two basic types of OLAP architectures MOLAP and ROLAP. MOLAP (Multidimensional OLAP) utilizes a true multidimensional database to store data. ROLAP (Relational OLAP) utilizes a relational database to store data but is mapped so that an OLAP tool sees the data as multidimensional. Thus, multidimensional databases can and are often generated from relational databases.
Conventionally, design of a multidimensional database requires a number of steps. First, the purpose and scope of the system must be clearly defined. This requires acquiring input from the users, analysts, and executives that will be utilizing the system. Next, tables are designed, for example one table per subject. Then, the records and fields are designed and specified and relationships are determined amongst the tables. The relational database can then be populated with data. Thereafter, multidimensional structures such as cubes and dimensions can be developed and mapped to the appropriate relational database tables. Alternatively, multidimensional structures can be simply mapped to an existing relational database.